/**
 * 扫码
 * @returns 
 */
export function $scanCode() {
	return new Promise((resolve, reject) => {
		uni.scanCode({
			success: ({
				result
			}) => resolve(result),
			fail: err => reject(err)
		})
	})
}

/**
 * 复制内容
 * @param {*} data 
 * @returns 
 */
export function $copy(data) {
	return new Promise(resolve => {
		uni.setClipboardData({
			data,
			success: r => resolve(r)
		});
	})
}

/**
 * 显示操作菜单ActionSheet
 * @param {Object} itemList 选项列表
 * @return {i,text} 下标，文本
 * 
    let {i, text } = await this.$showActionSheet(['举报', '删除'])
 */
export function $showAction(itemList) {
	return new Promise(resolve => {
		uni.showActionSheet({
			itemList,
			success: ({
				tapIndex
			}) => {
				resolve({
					i: tapIndex,
					text: itemList[tapIndex]
				});
			}
		})
	})
}

/**
 * 设置标题
 * @param {*} title 
 */
export function $setTitle(title) {
	uni.setNavigationBarTitle({
		title
	})
}

/**
 * 打电话
 */
export function $call(phoneNumber) {
	uni.makePhoneCall({
		phoneNumber
	})
}


/**
 * 显示地图，传入经纬度
 */
export function $showMap({
	lat,
	lng
}) {
	return new Promise((resolve, reject) => {
		uni.openLocation({
			latitude: parseFloat(lat),
			longitude: parseFloat(lng),
			success(e) {
				resolve(e)
			},
			fail(e) {
				reject(e);
			}
		})
	})
}


/**
 * 预览图片
 * */
export function $previewImg(urls, current) {
	if (!Array.isArray(urls)) {
		urls = [urls]
		current = 0
	}
	uni.previewImage({
		urls,
		current,
	})
}
